Skip to content

build(deps-dev): bump typescript from 5.9.3 to 6.0.3#60

Merged
erseco merged 2 commits into
mainfrom
deps/typescript-6
Jun 23, 2026
Merged

build(deps-dev): bump typescript from 5.9.3 to 6.0.3#60
erseco merged 2 commits into
mainfrom
deps/typescript-6

Conversation

@erseco

@erseco erseco commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Summary

Upgrades TypeScript from 5.9.3 to 6.0.3. This supersedes the failing Dependabot PR #45, which could not land as a plain version bump for two reasons:

  1. Peer-dependency conflict. @nextcloud/eslint-config@8 still pins its TypeScript peer to ^5.0.2, so npm install aborts with ERESOLVE. TypeScript 6 works fine with ESLint 8 and the bundled @typescript-eslint in this project, so a minimal overrides entry pins typescript across the tree. It can be dropped once the Nextcloud preset (v9) officially lists TS 6 in its peer range.
  2. baseUrl deprecation. TypeScript 6 deprecates the baseUrl compiler option (error TS5101), which fails vue-tsc --noEmit. baseUrl is removed and the path alias rewritten to "@/*": ["./src/*"]paths resolves relative to the config dir without baseUrl (supported since TS 4.1). webpack (@nextcloud/webpack-vue-config) and vitest resolve @/ via their own alias config, so they are unaffected.

Changes

  • package.json: typescript ^5.4.5^6.0.3; add overrides pinning typescript.
  • tsconfig.json: remove deprecated baseUrl; rewrite paths alias to ./src/*.
  • package-lock.json: regenerated (typescript deduped to 6.0.3 across all consumers).

Verification

All five CI frontend checks pass locally (Node 22 target):

  • npm run lint:biome
  • npm run lint (ESLint)
  • npm run typecheck (vue-tsc)
  • npm test (Vitest — 5 files, 54 tests)
  • npm run build (webpack production)

Closes #45.

Supersedes the failing Dependabot PR #45, which broke for two reasons
that a plain version bump can't resolve:

* @nextcloud/eslint-config@8 still pins its TypeScript peer to ^5.0.2,
  so `npm install` fails with ERESOLVE. TypeScript 6 works fine with
  ESLint 8 and the bundled @typescript-eslint here, so add a minimal
  `overrides` entry pinning typescript across the tree. Drop it once the
  Nextcloud preset (v9) officially lists TS 6 in its peer range.

* TypeScript 6 deprecates the `baseUrl` compiler option (error TS5101),
  which fails `vue-tsc --noEmit`. Remove `baseUrl` and rewrite the path
  alias to "@/*": ["./src/*"]; `paths` resolves relative to the config
  dir without `baseUrl` (supported since TS 4.1). webpack and vitest
  resolve `@/` via their own alias config, so they are unaffected.

All CI checks pass: Biome, ESLint, vue-tsc, Vitest (54 tests), webpack build.
@github-actions

github-actions Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Preview this PR in the Nextcloud Playground

Open this PR in the Nextcloud Playground

A fresh Nextcloud boots in your browser with this branch's exelearning app installed and enabled (log in as admin / admin). Two sample .elpx are seeded under exelearning-samples/ in Files — click one to open the viewer.

eXeLearning editor: v4.0.1 (overlaid at boot from the upstream release).

@erseco erseco merged commit 651f193 into main Jun 23, 2026
14 checks passed
@erseco erseco deleted the deps/typescript-6 branch June 23, 2026 08:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant